Inference rule determining method and inference device

ABSTRACT

An inference rule determining process according to the present invention sequentially determines, using a learning function of a neural network model, a membership function representing a degree which the conditions of the IF part of each inference rule is satisfied when input data is received to thereby obtain an optimal inference result without using experience rules. The inventive inference device uses an inference rule of the type &#34;IF . . . THEN . . . &#34; and includes a membership value determiner (1) which includes all of IF part and has a neural network; individual inference quantity determiners (21)-(2r) which correspond to the respective THEN parts of the inference rules and determine the corresponding inference quantities for the inference rules; and a final inference quantity determiner which determines these inference quantities synthetically to obtain the final results of the inference. If the individual inference quantity determiners (2) each has a neural network structure, the non-linearity of the neural network models is used to obtain the result of the inference with high inference accuracy even if an object to be inferred is non-linear.

TECHNICAL FIELD

The present invention relates to inference rule determining methods and inference devices in controlling apparatus, in the inference of an expert system, and in pattern recognition based on input data.

BACKGROUND ART

In order to describe a conventional technique, first, the basic fuzzy inference will be outlined by taking as an example fuzzy control used in apparatus control, etc.

In a control system which relates to the evaluation of human beings, the operator can determine a final manipulated control variable using a variable which the operator has determined subjectively and/or sensuously, for example, "large", "middle", "tremendously", or "a little" (which is hereinafter referred to as a fuzzy variable). In this case, the operator determines the manipulated variable from the input variables on the basis of his control experience. An inference device using fuzzy control assigns an input fuzzy number to an IF part of an inference rule in accordance with the inference rule of "IF. . .THEN. . ." type and determines an output fuzzy number of the THEN part from a fitting grade (membership value) indicative of the extent to which the inference rule is satisfied. The actual manipulated variable can be obtained by taking the center of gravity value, etc., of the output fuzzy number.

One of the conventional control methods using fuzzy inference is fuzzy modeling disclosed, for example, in Gean-Taek Kang, Michio Sugano; "fuzzy modeling" SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS PAPERS, Vol. 23, No. 6, pp. 650-652, 1987. In the control rule of the fuzzy modeling, the IF part is constituted by a fuzzy proposition and the THEN part is constituted by a regular linear equation between inputs and outputs. If a timing lag of first order tank model is considered, for example, the control rule among a control error e, its change in error de and a control output (manipulated variable) u is given by

If e is Zero and de is Positive Medium

    Then u=0.25 e+1.5 de

A plurality of such inference rules are prepared, all of which are referred to as control rules. Zero, Positive Medium, etc., are each a label or a fuzzy variable (fuzzy number) used to described the rules. FIG. 1 illustrates one example of a fuzzy variable. In FIG. 1, NB denotes Negative Big; NM, a negative Medium; NS, a Negative Small; ZO, a Zero; PS, Positive Small; PM, a Positive Medium; and PB, Positive Big. A function indicative of a fuzzy number F on X is referred to as a membership function u_(f) ( ) and the function value of x⁰ is referred to as a membership value u_(F) (X⁰). The general form of the control rules is given by ##EQU1## where R⁵ indicates a s^(th) rule; x_(j), an input variable; A_(j) ^(s), a fuzzy variable; y^(s), an output from the s^(th) rule; and c^(s), a THEN part parameter. The result of inference for an input (x₁ ⁰, x₂ ⁰, . . ., x_(m) ⁰) is given by ##EQU2## where n is the number of rules, and w^(s) is a fitting grade at which the input (x₁ ⁰, x₂ ⁰, . . ., x_(m) ⁰) is adapted to the IF part of the S^(th) rule W^(s) is given by ##EQU3## where the membership value in the x⁰ in the fuzzy variable A_(j) ^(s) is u_(Aj) ^(s) (x_(j)). The identification of a fuzzy model includes a two-stage structure, namely, identification of the structure of the IF and THEN parts and identification of the IF and THEN parts. The conventional identifying process includes the steps of (1) changing the fuzzy proposition of the IF part to a proper proposition, (2) changing W^(s) in a constant manner, (3) searching only the actually required ones of the input variables of the THEN part using a backward elimination method, (4) calculating parameters of the THEN part using the method of least squares, (5) repeating the steps (2)-(4) to determine an optimal parameter, (6) changing the fuzzy proposition of the IF part and (7) returning to the step (2) where an optimal parameter is repeatedly searched under the conditions of a new fuzzy proposition. Namely, this method can be said to be a heuristic method-like identifying algorithm.

A conventional inference device includes a fuzzy inference device, for example, shown in FIG. 2 in which reference numeral 1a denotes a data input unit (including a measured value and a value evaluated by human being); 2a, a display command unit; 3a, a fuzzy inference operation unit; 4a, an inference result output unit; and 5a, a display. The display 2a is composed of a keyboard, and the fuzzy inference operation unit 3a is composed of a digital computer The input data to the digital input unit la is subjected to inference operation at the fuzzy inference operation unit 3a. Thus, the operation unit 3a outputs the result of the inference and simultaneously displays a list of inference rules, a list of fuzzy variables and the states of use of various inference rules on the display 5a. In a conventional inference device such as that shown in FIG. 2, the inference rules of the fuzzy inference rules and the fuzzy variables as input data are fixed as constant values in the fuzzy inference operation unit 3a and have no function of changing the fuzzy variables.

Since an algorithm of determining a membership function is based on a heuristic method in the conventional inference rule determining method as well as in the fuzzy modeling, it is complicated and the number of parameters to be determined is very large. Therefore, optimal inference rules cannot be obtained easily at high speed.

Since an inference device such as that shown in FIG. 2 has no function of learning inference rules, the characteristic of the inference variable changes with time, so that it cannot cope with the situation that the inference accuracy would be deteriorated according to the inference rules set initially. Assume, for example, that there.. is the inference rule "If it is hot, then control device A so as be in level 3". Since the obscure concept "hot" varies from person to person as well as season to season, satisfactory control cannot be achieved unless the inference device has a learning function and can change the inference rules adaptively in accordance with situations under which the device is used. Furthermore, there are actually many cases where non-linear inference is required, so that a method of performing linear approximation described with reference to the above conventional example has a limit to improvement in the inference accuracy.

SUMMARY OF THE INVENTION

In order to solve the above problems, it is a first object of the present invention to provide an inference rule determining process for automatically determining a fuzzy number contained in the inference rules described in the form "IF. . .THEN. . ." using a learning function without relying upon experience.

It is a second object of the present invention to provide an inference device which is capable of coping with an inference problem at high speed even if the problem is non-linear, using the non-linearity of a neural network model. In the inference device, a membership value determiner constituting the neural network infers from the input variables a membership value corresponding to the IF part of each inference rule. The individual inference quantity determiner of the inference device infers from the input variables an inference quantity corresponding to the THEN part of the inference rule. The final inference quantity determiner makes a synthetic determination based on the inference quantity and the membership value inferred for each of the rules for the input variables and obtains a final inference quantity. The present invention is the inference device which functions as described above.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates fuzzy variables;

FIG. 2 is a schematic of a conventional inference device;

FIGS. 3 and 4 are schematics of neural network models which constitute the membership value determiner and the individual inference quantity determiner;

FIG. 5 is a schematic of a linear signal processor;

FIG. 6 is a schematic of a non-linear signal processor;

FIG. 7 is an input-output characteristic diagram of a threshold processor;

FIGS. 8(a)-(c) illustrate a process for automatically determining a membership function using a neural network model;

FIG. 9 is a schematic of an inference device of one embodiment in the present invention;

FIG. 10 is a schematic of input/output data used for describing the operation of the FIG. of embodiment;

FIG. 11 illustrates the membership value of each learning data in the IF part of the FIG. 9 embodiment;

FIG. 12 illustrates an inference error produced when the number of input variables is reduced;

FIG. 13 illustrates the result of inferring the inference quantity of the FIG. 9 embodiment;

FIG. 14 illustrates the result of the inference according to the present invention applied to the problem of inferring the COD density in Osaka Bay.

BEST MODE FOR CARRYING OUT THE INVENTION

The features of the inventive method lies in sequentially determining membership functions using a learning function. Various methods of realizing the learning function are conceivable. In a first embodiment, a learning algorithm of a neural network model is used. Before description of the embodiment, a neural network model and a neural network model learning algorithm will be described.

The neural network model is a mathematical network which has gotten a hint from the combination of cranial neural cells. Inference rules can be determined without relying on experience by determining the intensity of connection of units constituting the network using sequential learning.

The network of FIG. 3 is a kind of a neural network model. In FIG. 3, reference numeral 100 denotes a multi-input-single output signal processor; and 101, input terminals of the neural network model. FIG. 4 shows an example of a 3-stage structured neural network model which receives four input variables and outputs a single output value. There is no interconnection in each stage and a signal is propagated to an upper stage only. FIG. 5 specifically illustrates the structure of a linear signal processor which basically includes a linear computation section of the multi-input-single output signal processors 100 constituting the neural network model. In FIG. 5, reference numeral 1001 denotes each of input terminals of the multi-input-single output signal processor 100; 1002, a memory which stores weighting coefficients given to the corresponding inputs from the input terminals 1001; 1003, multipliers which multiply the inputs from the input terminals 1001 by the corresponding weight coefficients in the memory 1002; and 1004, an adder which adds the respective outputs from the multipliers 1003. Namely, the multi-input-single output signal processor 100 of FIG. 5 calculates

    y=Σc.sub.i x.sub.i

where x_(i) is an input value to the corresponding one of the input terminals 1001 and c_(i) is the corresponding one of the weight coefficients stored in the memory 1002. FIG. 6 specifically illustrates the structure of a non-linear signal processor, which performs a non-linear operation, of the multi-input-single output signal processors 100 which constitute the neural network model. In FIG. 6, reference numeral 1000 denotes the linear signal processor described with reference to FIG. 5; and 2000, a threshold processor which limits the output from the linear signal processor to a value in a predetermined range. FIG. 7 illustrates the input-output characteristic of the threshold processor 2000. For example, the input/output characteristic of the threshold processor 2000 which limits the output from the linear signal processor 1000 to within the range (0, 1) is represented mathematically by

    OUT=1/(1+exp(-IN))

where IN and OUT are the input and output to and from the threshold processor 2000.

The input/output relationship in the neural network is represented by

    Y=NN (x)                                                   (1)

In the description of the embodiment, the model size is represented by the k-layer|u₀ x u₁ x . . . x u_(k) | where u_(i) is the number of neuron models of each of the input, middle and output layers. The above refers to a general description of the neural network model.

The learning algorithm of the neural network model will now be described. Various learning algorithms are proposed, one of which is a backpropagation (D. E. Rumelhart, G. E. Hinton and R. J. Williams, "Learning Representations by Back-Propagating Errors," Nature, Vol. 323, pp. 533-536, Oct. 9, 1986). The mathematical verification and formulation of this algorithm are left to those references, but it is basically described as follows. First, a multiplicity of sets of input variables as learning data and percentage values belonging to the respective inference rules inferred by other means are prepared. Input data is input to the neural network model. Initially, an appropriate value, for example a random number value, is input in the memory 1002. The error between the output value from the neural network model and the percentage value belonging to the inference rules is calculated. Since the error is a function of the weight coefficients in the memory 1002, the weight coefficient is corrected in the direction of weight differentiation with respect to the error. Namely, the error is minimized and learning is performed by correcting the weights sequentially in accordance with the Steepest Decent Method. This is the summary of the learning method using Backpropagation Algorithm.

An inference rule determining process and the inference quantity calculating process according to the present invention will be described using the neural network model and learning algorithms.

STEP 1

Only input variables having high correlation to an inference value are selected and unnecessary input variables are removed. If the determination is performed, for example, using the neural network model, first, respective input variables x_(j) where j=1, 2, . . . k are assigned to the neural network model and learning is performed such that an inference value y_(i) is obtained. Similar learning is performed by decrementing the number of input variables by one. Similarly, the backward elimination method is repeated. The difference between each output of the neural network model which has completed the corresponding learning and the inference value y_(i) is compared using the error sum of squares as an evaluation index, and only the input variables (X_(j) where j=1, 2, . . . m, where m≦k) to the neural network model present when the error is minimized are selected.

STEP 2

The input/output data (x_(i), y_(i)) is divided into n_(t) data segments for identifying the structure of an inference rule (hereinafter described as TRD) and n_(o) inference rule evaluation data segments (hereinafter described as CHD) where n=n_(t) +N_(o).

STEP 3

Each TRD is divided into optimal r sub-segments using the regular clustering method. Each set of learning data segments to which the TRD is divided is R^(s) where s=1, 2, . . ., r, and the learning data on R^(s) is (x_(i) ^(s), y_(i) ^(s)) where i=1, 2, . . ., (n_(t))^(S) where (n_(t))^(s) denotes the number of data of the TRD in each R^(S). The r-division of an m-dimensional space means that the number of inference rules is r.

STEP 4

The IF part structure is identified. X_(i) is an input value to the input layer of the neural network model and the output value from the output layer is given by ##EQU4## where 1=1, . . ., n_(t) and s=1, . . ., r

A neural network model is learned such that the grade w_(i) ^(s) of each learning data (x_(i)) belonging to each R^(s) is inferred. The output value from the neural network model after learning is the membership value of the IF part. Namely, the membership function is given by

    μ.sub.A.sup.s (x.sub.i)=W.sub.i.sup.s

where i=1, 2, . . ., n

STEP 5

The structure of the THEN part is identified. The THEN part structure model of each inference rule is represented by the input-output relation (1) of the neural network model and the input values x_(i) ^(s), . . ., x_(im) ^(s) where i=1, 2, . . ., (n_(t) ^(s)) and the output value y_(i) ^(s) are allocated. A neural network model which infers the inference quantity by learning is identified. Substituting the CHD input values x_(il) ^(s), . . ., x_(im) ^(s) where i=1, 2, . . ., n_(c) into the resulting neural network model and the error sum of squares O^(s) is calculated by ##EQU5## There is another idea to calculate θ_(m) ^(s) with the weight; this is ##EQU6##

SETP 6

Only the input variables contributing to the inference quantity inferring equation of the THEN part of each inference rule are selected using the variable reducing method. Only any one of m input variables is removed and a neural network model is then identified for each THEN part using the TRD similarly to step 5. The inferred error sum of squares θ_(m-1) ^(sp) of the inference quantity obtained when the CHD is used is calculated as follows: ##EQU7## where p=1, 2, . . ., m

From the above expression, it will be seen to what extent the removed input variable is important to determine the THEN part. If

    θ.sub.m.sup.s >θ.sub.m-1.sup.sp,

the input variable x^(p) is discarded because it is considered to be not important.

STEP 7

An operation similar to step 5 is performed by using the m remaining input variables. Subsequently, steps 5 and 6 are repeated and the calculation is stopped when no equation (2) holds for all the input variable. The optimal neural network model is the one where O^(s) is minimum.

The steps 1-7 determine the IF and THEN parts for each inference rule and the identification of the structure of the fuzzy inference rule ends.

STEP 8

The quantity of inference y_(i) is obtained by ##EQU8## where y^(s) shows a presumed value obtained by substituting CHD into the optimal neural network model obtained at step 7.

If the neural network model includes a collection of non-linear characteristics of FIG. 7, the inference of a non-linear object is automatically possible by this learning process, of course.

Thus, if the inference rule is determined by the inventive process, the inference rules are obtained easily and accurately without using the heuristic method since the inference rules are determined sequentially using the learning function even if the object to be inferred is in a non-linear relationship or in an obscure input/output relationship.

The inventive process described above will now be described using specific experimental values. In the particular experiment, the inference rule and the quantity of inference were determined using simple numeral examples shown in Tadashi Kondo, Revised GMDH Algorithm Estimating Degree of the Complete Polynomial, SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS PAPERS, Vol. 22, No. 9, pp. 928-934, 1986. The process for determining the inference rule will be described below.

STEPS 1, 2

FIG. 10 shows input/output data where data numbers 1-20 denote data for determining the structure of an inference rule (TRD) used in learning and data numbers 21-40 denote evaluation data (CHD). Therefore, n_(t) =n_(c) =20 and m=2. Input variables were selected by learning 15,000 times in a three-layered (3×3×3×1) neural network model. The results are shown in Table 1.

                  TABLE 1                                                          ______________________________________                                                       ERROR SUM OF SQUARES                                             ______________________________________                                         when all variables were used                                                                   0.0007                                                         when x.sup.1 was removed                                                                       0.3936                                                         when x.sup.2 was removed                                                                       0.1482                                                         when x.sup.3 was removed                                                                       0.0872                                                         when x.sup.4 was removed                                                                       0.0019                                                         ______________________________________                                    

The error sum of squares is not so much influenced even if the input variable x⁴ is added or otherwise removed. Therefore, it is determined that it does not virtually influence the determination of the membership function and thus is not used in the subsequent experiments.

STEP 3

The TRD is divided using the regular clustering method. As the result of the clustering, each learning data is dividable into two segments as shown in Table 2.

                  TABLE 2                                                          ______________________________________                                         INFERENCE RULES                                                                               LEARNING DATA NUMBERS                                           ______________________________________                                         R.sup.1        1, 2, 3, 4, 5, 11, 12, 13, 14, 15                               R.sup.2        6, 7, 8, 9, 10, 16, 17, 18, 19, 20                              ______________________________________                                    

STEP 4

In order to infer with the value of W^(s) ε[0,1] a proportion W_(i) ^(s) ={0, 1} belonging to learning data (x_(i), y_(i)) where i=1, 2, . . ., 20, the three-layered [3×3×3×2] neural network model was learned 5,000 times to obtain the fuzzy number A^(s) of the IF part. FIG. 11 illustrates the fuzzy number A¹ of the IF part for the inference rule R¹ at this time. The input data in Table 2 where μ_(R) ' (x_(i), y_(i))=W_(i) ¹ >0 was used as the learning data.

Similarly, the fuzzy number of the IF part R² was calculated.

STEP 5

An inference quantity presuming equation of the THEN part in each inference rule was calculated. The three-layered [3×8×8×1] neural network model was learned 20,000 times and θ₄ was obtained as shown in Table 3.

                  TABLE 3                                                          ______________________________________                                         REFERENCE RULE 1: O.sub.4                                                                           27.86                                                     INFERENCE RULE 2: O.sub.4                                                                           1.93                                                      ______________________________________                                    

STEPS 6, 7

θ^(s) is calculated where any one input variable is removed from the structure model of the THEN part of the influence rule R^(s). A three-layered [2×8×8×1] neural network model was learned 10,000-20,000 times. As a result the error sums of squares of FIG. 12 were obtained for the inference rules R¹ and R², respectively. The comparison between steps 5 and 6 for each inference rule shows that

    all θ.sub.3.sup.1 >θ.sub.4.sup.2 (=27.8)

    θ.sub.3.sup.2 <θ.sub.4.sup.2 (=1.93) where x.sub.1 is removed.

Therefore, the neural network model at step 5 is used as the THEN part model for inference rule 1. For inference rule 2, calculation is further continued and is ended at the repetitive calculations at the second stage. (The neural network model with (x₂, x₃) inputs is used as the THEN part. The resulting fuzzy model is given by ##EQU9## FIG. 13 illustrates the results of the calculation of y* in equation (3) using an inference device which executed the rules thus obtained.

While in the particular embodiment the weighted center of gravity defined by equation (3) was employed as the quantity of inference obtained as the results of the fuzzy inference, a process for calculating the central value or maximum value may be used instead. While in the particular embodiment the algebraic product was used in the calculation equation of W^(s), a fuzzy logical operation such as a miniature calculation may be used instead of the algebraic production.

In the steps of the process for determining the inference rule, the step of determining a non-linear membership function automatically will now be described in more detail.

It is natural that the same reference rule will be applied to similar input data. At step 3, learning data is clustered (FIG. 8(a)). These classes correspond to inference rules in one-to-one relationship. The inference rule is, for example, "IF x₁ is small and x₂ is large, THEN . . .". Three such inference rules R₁ -R₃ are shown in FIG. 8(a). One hundred percent of each of the inference rules is obeyed at typical points (a set of input data) in these classes, but the data are more influenced by a plurality of such inference rules nearer the boundary. A function indicative of this percentage is the membership function, the form of which is as shown in FIG. 8(c), for example, which is a view of the membership function as viewed from above and the hatched portion is an area where the membership functions intersect.

A step 3. 4 is for preparing such membership functions. A neural network model of FIG. 8(b) is prepared, variable values (x1 and x2 in FIG. 8(b) of the IF part are allocated to the input while 1 is allocated to a rule number to which the input value belongs and 0 is allocated to rule numbers other than the former rule number in the output. Learning is then performed. One of the important features of the neural network model is that a similar input corresponds to a similar output. While in learning the points x of FIG. 8(a) alone are used, the same output is obtained at points near the points x, namely, the output shows that the same inference rule is obeyed. The neural network model which has finished learning outputs optimal balance percentages belonging to the respective inference rules when it receives data in the vicinity of the boundaries of the respective inference rules. These are the membership values. In other words, the neural network model includes all the membership functions of the respective inference rules.

While in the particular embodiment of the inventive process the membership functions of fuzzy inference rules are determined using the learning algorithm of the neural network, other learning algorithms may be used, of course. As will be easily imagined from the fact that the Back-Propagation algorithm described in the algorithms of the neural network is based on the classic steepest descent method, many learning algorithms will be easily conceived which are used in the field of non-linear minimization problems such as Neuton's method and conjugate gradient method. It is common sense that in the field of pattern recognition a learning method is used in which a standard pattern which is used for recognition is caused to sequentially approach the input pattern. Such sequential learning process may be used.

While in the step 5 of the embodiment the THEN part has been illustrated as being constructed by a neural network, it may be expressed using another process. For example, if fuzzy modeling such as that described in a conventional method is used, the THEN part will differ from that of the first embodiment in terms of non-linear expression. However, the essence of the present invention will not be impaired which automatically determines the fuzzy number of an inference rule sequentially using the learning function if a learning function such as a neural network model is incorporated in the IF part.

In the particular embodiment of the present invention, the expression "automatic formation of a membership function of a fuzzy inference rule" is used. This special case corresponds to a production rule used in a classic expert system. In such a case, the expression "automatic formation of the reliability of a inference rule" would be more intelligible. However, this is only a special case of the embodiment of the present invention.

A second embodiment of the invention which performs inference on the basis of the inference rule obtained by the inventive method will now be described. FIG. 9 is a schematic of the first embodiment of the inference device according to the present invention. In FIG. 1, reference numeral 1 denotes a membership value determiner which calculates the membership value of the IF part of each inference rule; 2, an individual inference quantity determiner which infers a quantity of inference to be calculated at the THEN part of each inference rule; and 3, a final inference quantity determiner which determines the final quantity of inference from the outputs of the individual inference quantity determiner 2 and the membership value determiner 1. Reference numerals 21-2r denote the internal structure of the individual inference quantity determiner 21 which determines an inference quantity in accordance with the respective inference rules 1-r. The determiners 1 and 21-2r each have a multi-stage network structure such as shown in FIG. 3.

If input values x₁ -x_(m) are input to the inference device of the present invention, the membership value determiner 1 outputs the respective percentages in which the corresponding input values satisfy the respective inference rules. The determiner 1 has beforehand finished its learning in accordance with the steps described in the inference rule determining process of the present invention. The individual inference quantity determiner 21 outputs an inference quantity when those input values obey the inference rule 1. Similarly, the individual inference quantity determiners 21-2r output inference quantities when they obey inference rules 2-r. The final inference quantity determiner 3 outputs a final inference result from the outputs of the determiners 1 and 2. The process for the determination uses the equation (3), for example.

As will be clear from FIGS. 6 and 7, the input/output relationship of the multi-input-single output signal processor 100 which constitutes the neural network model is non-linear. Therefore, the neural network model itself can perform non-linear inference. Thus, the inference device according to the present invention realizes a high inference accuracy which cannot be achieved by linear approximation.

High inference accuracy of the present invention will be illustrated using a specific application. The application refers to the inference of the COD (Chemical Oxygen Demand) density from five parameters measured in Osaka Bay from April, 1976 - March, 1979. The five measured parameters are (1) water temperature (°C.), (2) transparency (m), (3) DO density (ppm), (4) salt density (%), and (5) filtered COD density (ppm). In this data, 32 sets of data obtained from April, 1976 to December, 1978 were used for learning and the remaining 12 sets of data were used for evaluation after the learning process FIG. 14 illustrates the result (solid line) estimated by the present invention and the actual observed values of COD density (broken lines). It will be understood that the presumed result is a very good one.

As described above, the first embodiment of the inventive inference device includes a membership value determiner constituted by a plurality of multi-input-single output signal processors connected in at least a network such that it has a learning function and is capable of determining a quantity of inference corresponding to the input variables in a non-linear relationship.

A second embodiment of the inventive inference device is capable of performing approximate inference by storing in memory the beforehand obtained input/ output relationship of a predetermined neural network model, and referring to the memory instead of execution of neural network model directly each time this execution is required. While in the first embodiment the membership value and individual inference quantity determiners are described as having a neural network model structure, an input-output correspondence table may be prepared beforehand from a neural network model determined by a learning algorithm if the input variables are obvious beforehand and/or if close approximation is permissible. Although the inventive method cannot be incorporated so as to have a learning function in the second embodiment which functions as a substitution for the membership value determiner or the individual inference quantity determiner by referring to the correspondence table during execution of the inference rule, an inexpensive small-sized inference device is realized because no circuit structure such as that shown in FIG. 5 is needed. The inference corresponding to non-linearity can be performed as in the first embodiment of the inference device of the present invention.

As described above, according to the second embodiment, at least one of the membership value determiner and the individual inference quantity determiner is composed of the memory which beforehand stores the input/output characteristic of the inference unit constituted by a plurality of multi-input-single output processors connected to at least the network, and the memory referring unit. Thus, the inference device has a simple circuit structure for determining an inference quantity corresponding to input variables in a non-linear manner.

INDUSTRIAL APPLICABILITY

As described above, according to the present learning function, forms an inference rule automatically and performs the best inference. According to the inventive inference device, inference is performed with high accuracy even if an object to be inferred is non-linear, so that the device is valuable from a practical standpoint. 

We claim:
 1. An inference system comprising:a system variable input device for receiving input signals and an observed output from an outer system and for generating an input vector from said input signals; a membership value determiner for obtaining a membership value corresponding to an IF part of at least one inference rule from the input vector; an individual inference quality determiner for obtaining an inference quantity corresponding to a THEN part of at least one inference rule from the input vector; a final inference quality determiner for determining a final inference quantity by performing fuzzy inference on outputs from the membership value determiner and the individual quantity determiner; and an adjusting device for adjusting output characteristics of the membership value determiner, wherein said membership value determiner has an artificial neural network structure with a plurality of multiple input-single output signal processors, each of the signal processors receiving plural responsive outputs from one or more others of said signal processors and providing one output to one or more others of said signal processors, each of said signal processors comprising a linear signal processor which includes: a memory for storing a plurality of weighting coefficients; plural input terminals for receiving and transferring a plurality of input data from the input vector; multiplying means for weighting the input data from the input terminals with the weighting coefficients read from the memory; and adding means for adding a majority of data weighted by the multiplying means and providing an estimated system output; and wherein said adjusting device receives the estimated system output and said observed output, obtains a difference therebetween, and successively alters the weighting coefficients stored in said memory so as to minimize said difference.
 2. An inference device according to claim 1, wherein the membership value determiner having the neural network includes a signal processing network constituted by a plurality of multi-input-single output signal processors in at least a network, and wherein the multi-input-single output signal processor includes a non-linear signal processor which comprises a threshold processor connected to the output of the linear signal processor for limiting the output of the linear signal processor to within a predetermined range.
 3. An inference device according to claim 1, including a memory for storing an input-output relationship, beforehand obtained, in the signal processing network constituted by the multi-input-single output signal processors, and a memory for referring to the input-output relationship in the memory.
 4. An adjusting device, for use in an inference device to be used in an outer system, for adjusting output characteristics of a membership value determiner in said inference device, the inference device comprising:a system variable input device for receiving input signals and an observed output from an outer system and for generating an input vector from input signals to the inference device; a membership value determiner for generating a membership value indicative of a degree of attribution of the input vector to an IF part of a fuzzy inference rule of the IF-THEN type, the input vector being received from the system variable input device; an individual inference quality determiner for generating a first inference quantity of the input vector corresponding to a THEN part of a fuzzy inference rule, the input vector being received from the system variable input device; a final inference quality determiner for determining a final inference quantity by processing values attained from the first inference quantities generated by the individual inference quantity determiner and the corresponding membership values; and said membership value determiner further comprising an artificial neural network, said network having plural input terminals for receiving the input vector, and plural output terminals for outputting membership values; said artificial neural network further comprising an artificial neural network structure with a plurality of multiple input-single output signal processors, each of said signal processors receiving plural responsive outputs from one or more others of said signal processors and said input terminals and providing one output to one or more others of said signal processors, and said output terminals, each of said signal processors having an artificial neuron structure including a signal processor which comprises: a memory for storing a plurality of weighting coefficients which define output characteristics of the signal processor; a plurality of multipliers for multiplying input data from the input terminals with the weighting coefficients read from the memory; at least one adder for generating output data by adding plural weighted data from the multipliers; and a threshold processor for generating an output representative of a membership value by clipping the output data from the adder within a predetermined range; `said adjusting device receiving said input vector generated by said system variable input device and said final inference quantity and further comprising: a receiving device for receiving said input vector from a part of said outer system an actual output from said inference device; a clustering device for providing class numbers based on a degree of similarity of the input vector from the system variable input device, said class numbers corresponding to the output terminals of the membership value determiner, respectively; a calculating device for providing a target output corresponding to said output from said part of said outer system; a subtractor for delivering a difference between said actual output and said target output; and a weighting coefficient adjustor for dynamically altering the weighting coefficients stored in said memory so as to minimize said difference delivered by the subtractor in order to adjust the output characteristics of the membership value determiner successively.
 5. The adjusting device according to claim 4, wherein:said receiving device receives an output from the membership value determiner, said calculating device provides a target output for said clustering device, and said subtractor delivers a difference between the target output from the clustering device and the output from the membership value determiner.
 6. The adjusting device according to claim 4, wherein:said receiving device receives said final inference quantity, said calculating device provides a target output for said final inference quantity determiner, and said subtractor delivers a difference between said target output and said final inference quantity from the inference device.
 7. The adjusting device according to claim 4, wherein:said receiving device receives said observed system output while said outer system is controlled by said final inference quantity from said inference device, said calculating device provides a target output for said outer system, and said subtractor delivers a difference between said observed system output from said outer system and said target output for said outer system.
 8. An inference device comprising:a system variable input device for receiving input signals and an observed output from an outer system and for generating an input vector from the input signals to the inference device; a membership value determiner for generating a membership value indicative of a degree of attribution of the input vector to an IF part of a fuzzy inference rule of the IF-THEN type, said input vector being received from the system variable input device; an individual inference quality determiner for generating an inference quantity of the input vector corresponding to a THEN part of a fuzzy inference rule, the input vector being received from the system variable input device; a final inference quality determiner for determining a final inference quantity by processing values attained from the inference quantities generated by the individual inference quantity determiner and the corresponding membership values; and an adjusting device comprising: a receiving device for receiving said input vector from a part of said outer system and an actual output from said inference device; a clustering device for providing class numbers based on a degree of similarity of the input vector from the system variable input device, said class numbers corresponding to the output terminals of the membership value determiner, respectively; a calculating device for providing a target output for said inference device; a subtraction for delivering a difference between said actual output and said target output; a weighting coefficient adjuster for dynamically altering the weighting coefficients stored in said memory so as to minimize said difference delivered by the subtractor in order to adjust the output characteristics of the membership value determiner successively; said membership value determiner having an artificial neural network with plural input terminals for receiving the input vector and plural output terminals for outputting membership values; said artificial neural network having an artificial neural network structure with a plurality of multiple input-single output signal processors, each of said signal processors receiving plural responsive outputs from one or more others of said signal processors and said input terminals and providing one output to one or more others of said signal processors, and said output terminals; each of said multiple input-single output signal processors having an artificial neuron structure and comprising a signal processor which comprises: a memory for storing a plurality of weighting coefficients which define output characteristics of the signal processor; a plurality of multipliers for multiplying input data from the input terminals with the weighting coefficients read from the memory; at least one adder for generating output data by adding plural weighted data from the multipliers; and a threshold processor for generating an output representative of a membership value by clipping the output data from the adder within a predetermined range.
 9. The adjusting device according to claim 8, wherein:said receiving device receives an output from the membership value determiner, said calculating device provides a target output for said clustering device, and said subtractor delivers a difference between the output from the clustering device and the output from the membership value determiner.
 10. The adjusting device according to claim 8, wherein:said receiving device receives said final inference quantity, said calculating device provides a target output for said final inference quantity determiner, and said subtractor delivers a difference between said target output and said final inference quantity from the inference device.
 11. The adjusting device according to claim 8, wherein:said receiving device receives said observed system output while said outer system is controlled by said final inference quantity from said inference device, said calculating device provides a target output for said outer system, and said subtractor delivers a difference between said observed system output from said outer system and said target output for said outer system. 